#pragma once
#include "srect.h"
#include "SDL/SDL.h"
#include "graphics.h"

class UIControl
{
public:
	virtual bool handleEvent(const SDL_Event & a_event) = 0;
	virtual void draw(SDL_Surface * a_surface) = 0;
	virtual SRect * getArea() = 0;
	/** @return true if the update process resulted in a change */
	virtual bool update(const int & a_ms) = 0;
//	virtual void setDirty(SDL_Surface * a_surface){VSDL_addDirtyRectangle(a_surface, *getArea());}
};